Skip to content

Add data points for Chrome 137 WebGPU additions #26935

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Jun 2, 2025

Conversation

chrisdavidmills
Copy link
Contributor

@chrisdavidmills chrisdavidmills commented May 29, 2025

Summary

Chrome 137 supports the following WebGPU updates:

This PR adds data point for both those features.

Test results and supporting details

Related issues

@github-actions github-actions bot added data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API size:m [PR only] 25-100 LoC changed labels May 29, 2025
Copy link
Contributor

github-actions bot commented May 29, 2025

Tip: Review these changes grouped by change (recommended for most PRs), or grouped by feature (for large PRs).

@caugner caugner self-requested a review May 30, 2025 08:07
chrisdavidmills and others added 2 commits May 30, 2025 11:56
Co-authored-by: Claas Augner <495429+caugner@users.noreply.github.com>
Co-authored-by: Claas Augner <495429+caugner@users.noreply.github.com>
@chrisdavidmills
Copy link
Contributor Author

Thanks, @caugner, your changes look good.

@chrisdavidmills chrisdavidmills requested a review from caugner May 30, 2025 10:58
Copy link
Contributor

@caugner caugner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Second thoughts:

Comment on lines 159 to 161
"bind_GPUTextureView": {
"__compat": {
"description": "Bind `GPUTextureView` (2D, single subresource) in place of a `GPUExternalTexture`.",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks we usually prefer a more general wording "accepts_X" when it comes to parameters or options accepting a certain type.

Also, we're actually talking about the resource field (of type GPUBindingResource), which is provided via the entries option (a GPUBindGroupEntry sequence), which is passed to createBindGroup() via the (only) descriptor parameter (a GPUBindGroupDescriptor). So bind_GPUTextureView skips all these intermediate levels.

Note also that the GPUBindingResource type includes more than GPUTextureView and GPUExternalTexture, so the question arises whether these other types are currently supported or not?

Assuming we go with the currently proposed structure, then I would also expect a subfeature bind_GPUExternalTexture, and possibly more in the future.

Alternatives are:

  • Making the feature id more explicit (e.g. descriptor_entries_option_accepts_GPUTextureView_resource).
  • Adding an intermediate subfeature for the descriptor_entries_option, either with partial_implementation as long as all types aren't implemented, or with subfeatures accepts_GPUTextureView_resource.

@chrisdavidmills Wdyt?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Impressive bit of analysis there, @caugner. What you are saying sounds correct, but I worry that we are in danger of making the data hard to understand. I was more going for describing the end result (we can now bind GPUTextureViews) rather than the exact dictionary option chain required to make this result happen.

The other possible resources to bind are all supported, so I thought it would be OK to omit those.

Out of these two options, I'd prefer the first alternative. Because we mostly don't tend to create separate page trees for every dictionary, we don't usually end up with separate BCD for each one either.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, I actually missed that this was a spec change, so it absolutely makes sense to only document this type.

So let's go with the first alternative, making the feature id more explicit. I don't think we have guidelines for the description, so I'm okay with keeping the current one.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@caugner caugner merged commit d2f7544 into mdn:main Jun 2, 2025
6 checks passed
@mdn-bot mdn-bot mentioned this pull request Jun 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API size:m [PR only] 25-100 LoC changed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants